Relational databases organize data into tables of rows and columns according to strictly defined rules. Columns are typically related by way of a key and these relationships are subject to certain restraints. When a user submits a query, these rules, keys, and constraints are used to search through information stored in the relational database to find data that matches the query. However, such searches are limited to literal interpretations of the query and the literal application of the rules, keys, and constraints to the data stored within the relational database. Consequently, certain relationships between the stored data and the query are missed because they are not literally correlated to the query or how the data is classified or categorized within the relational database using the rules, keys, and constraints.